﻿using System.Collections;
using System.Collections.Generic;
using System.Text;
using T.FAS.Runtime.Metadata.Entity.DataModel;

namespace T.FAS.Runtime.DataModel.Dao
{
    /// <summary>
    /// 数据对象DAO
    /// </summary>
    public interface IDataObjectDao
    {
        List<DataObject> GetDataObjects(Dictionary<string,string> filter);
        DataObject GetDataObjectByID(string dataObjectID);
        void SaveDataObject(DataObject dataObject);
        void SaveDataObjectIndexs(List<DataObjectIndex> dataObjectIndexs);
        void SaveDataObjectIndexColumns(List<DataObjectIndexColumn> dataObjectIndexs);
        //void UpdateDatabase(Database database);
        void DeleteDataObject(string dataObjectID);
        List<DataObjectIndex> GetDataObjectIndexsByDataObjectID(Dictionary<string, string> filter);
        
    }

    /// <summary>
    /// 数据对象列DAO
    /// </summary>
    public interface IFASDataObjectColumnDao
    {

    }

    /// <summary>
    /// 数据对象关联关系DAO
    /// </summary>
    public interface IFASDataObjectRelationDao
    {

    }

    /// <summary>
    /// 数据对象索引DAO
    /// </summary>
    public interface IFASDataObjectIndexDao
    {

    }
}
